package 二叉树

/*
https://leetcode.cn/problems/binary-tree-inorder-traversal/?envType=study-plan-v2&envId=top-100-liked

94. 二叉树的中序遍历
给定一个二叉树的根节点 root ，返回 它的 中序 遍历 。

示例 1：
输入：root = [1,null,2,3]
输出：[1,3,2]

示例 2：
输入：root = []
输出：[]

示例 3：
输入：root = [1]
输出：[1]
*/

type TreeNode struct {
	Val   int
	Left  *TreeNode
	Right *TreeNode
}

var res []int

func inorderTraversal(root *TreeNode) []int {

	res = make([]int, 0)
	inorder(root)
	return res
}

func inorder(root *TreeNode) {
	if root == nil {
		return
	}

	inorder(root.Left)
	res = append(res, root.Val)
	inorder(root.Right)
}
